When playing video games, particularly educational games, players sometimes encounter learning challenges that reach beyond their current knowledge and skills. They may become stuck in the game play with nobody to help them progress. For example, in language instruction games, players for whom the game's primary language is their second language can become frustrated and discouraged by their inability to understand game dialogue. Subtitles in the learner's native language and/or the language of study offer some relief to the game player, but even these can be frustrating since they are often difficult to read in the allotted time, or too hard to understand for beginning users. A user has little recourse if the user fails to understand the subtitle. Alternatively, in a math game, a player may be unable to complete a simple addition problem because the player is unable to recognize a number included in the problem or unable to parse the form of the expression (e.g. a word problem). Current education theory suggests that students learn best when they work within their “zone of proximal development” (the space between their current abilities and their emerging potential abilities) and are stretched to new challenges. Yet, in the absence of constructive help, students cannot be pushed too much, as this risks that their frustration will lead them to quit all together.
Further, while users can choose difficulty levels in some games, or turn help features on or off, this is time consuming, and potentially inaccurate, since the user is required to self-assess a skill level. Further, the help cannot be tailored to particular users. This is especially problematic with language study, since users vary greatly in their individual skills, some being strong readers but poor speakers; others being able to speak comfortably not able to read well. While players may build individual dictionaries or become familiar with the help systems in certain software applications for learning, these various applications are not able to share information about specific user skills across applications, resulting in wasted time for the user creating a new dictionary for each application or building up familiarity with a new help system each time.